package weaver.workflow.webservices;

public class ArrayOfWorkflowDetailTableInfo  {
	private WorkflowDetailTableInfo[] workflowDetailTableInfo;

	public ArrayOfWorkflowDetailTableInfo() {
	}

	public WorkflowDetailTableInfo[] getWorkflowDetailTableInfo() {
		return this.workflowDetailTableInfo;
	}

	public void setWorkflowDetailTableInfo(WorkflowDetailTableInfo[] workflowDetailTableInfo) {
		this.workflowDetailTableInfo = workflowDetailTableInfo;
	}

	public WorkflowDetailTableInfo getWorkflowDetailTableInfo(int i) {
		return this.workflowDetailTableInfo[i];
	}

	public void setWorkflowDetailTableInfo(int i, WorkflowDetailTableInfo value) {
		this.workflowDetailTableInfo[i] = value;
	}

	private Object __equalsCalc = null;
	public synchronized boolean equals(Object obj) {
		if (!(obj instanceof ArrayOfWorkflowDetailTableInfo)) return false;
		ArrayOfWorkflowDetailTableInfo other = (ArrayOfWorkflowDetailTableInfo) obj;
		if (obj == null) return false;
		if (this == obj) return true;
		if (__equalsCalc != null) {
			return (__equalsCalc == obj);
		}
		__equalsCalc = obj;
		boolean _equals;
		_equals = true && 
			((this.workflowDetailTableInfo==null && other.getWorkflowDetailTableInfo()==null) || 
			 (this.workflowDetailTableInfo!=null &&
			  java.util.Arrays.equals(this.workflowDetailTableInfo, other.getWorkflowDetailTableInfo())));
		__equalsCalc = null;
		return _equals;
	}

	private boolean __hashCodeCalc = false;
	public synchronized int hashCode() {
		if (__hashCodeCalc) {
			return 0;
		}
		__hashCodeCalc = true;
		int _hashCode = 1;
		if (getWorkflowDetailTableInfo() != null) {
			for (int i=0;
				i<java.lang.reflect.Array.getLength(getWorkflowDetailTableInfo());
				i++) {
				Object obj = java.lang.reflect.Array.get(getWorkflowDetailTableInfo(), i);
				if (obj != null &&
					!obj.getClass().isArray()) {
					_hashCode += obj.hashCode();
				}
			}
		}
		__hashCodeCalc = false;
		return _hashCode;
	}

}
